The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.
Increases in hardware and software support costs have given way to a new technology delivery model in which an application service provider hosts applications coupled to data storage units on networked devices that are owned by the application service provider. The application service provider's customer computers, typically with business enterprises, connect to the hosted applications via a web browser and enter data via the applications with the expectation that the data entered will be available on-demand whenever needed. The customer computers typically access the data for various data mining or data aggregation operations required to perform various analytics, such as determining particular trends related to enterprise operations. “Analytics,” in this context, refers to calculations that are performed on large datasets and/or using complex algorithms that seek to find trends, correlations or other meaning in the datasets.
These analytics may take a long time to perform even with high-speed computers and contemporary database architectures. When processing analytics takes a long time, the computers and databases involved in the analytics may be available for fewer other operations or available later in time. Long computation times also typically indicate the use of large amounts of buffer memory and/or scratchpad data storage to store interim results or metadata that are necessary during computation. Therefore, long processing times ultimately result in inefficient data processing and consumption of excess processor, memory and storage resources. Any improvements in reducing the time needed to perform analytics may result in reduced consumption of these machine resources and more efficient data processing, and therefore improved methods of performing analytics are needed.